﻿using System.Collections.Generic;

using BookEntities;


namespace BookStoreGUI
{
    
    /// <summary>
    /// Delegate for changing the title of a book.
    /// </summary>
    delegate void ChangeBookTitleDelegate();

    /// <summary>
    /// Delegate for deleting the title of a book.
    /// </summary>
    delegate void DeleteBookDelegate();

    
    /// <summary>
    /// Delegate for getting the list of books.
    /// </summary>
    /// <returns>The list of books</returns>
    delegate List<Book> GetBooks();

    /// <summary>
    /// Delegate for setting the list of books.
    /// </summary>
    /// <param name="book">The list of books</param>
    delegate void SetBooks(List<Book> books);


    /// <summary>
    /// The type of a book query.
    /// </summary>
    enum QueryType { ORQuery, ANDORQuery };

    enum ViewBooksType { AllBooks, CategorizedBooks, UncategorizedBooks, SoughtBooks };
}
